1. Field of the Invention
This invention relates to satellite positioning systems (SPS), and in particular, to determining time associated with SPS signal transmission and/or reception.
2. Background Information
SPS receivers such as GPS (Global Positioning System) receivers normally determine their position by computing relative times of arrival of signals transmitted simultaneously from a multiplicity of satellites such as GPS (or NAVSTAR) satellites. In typical satellite positioning systems, such as GPS, the multiplicity of satellites are synchronized according to a highly accurate system clock, which may provide atomic clock accuracy. Generally, each satellite transmits navigational data (e.g., the location of the satellite) that also includes a time stamp to indicate when the data was transmitted, according to the time as indicated by the system clock (referred to hereafter as system time), which, in the case of GPS, is referred to as (GPS) system time.
However, SPS receivers typically do not have such an accurate clock. Thus, an SPS receiver typically determines timing information by reading and timing information contained in the satellite message. Many receivers determine position and time by using measurements from four (or more) satellites. The range to each of four satellites (i=1, 2, 3, 4) may be expressed as:
PRi={square root over ((xxe2x88x92xi+L )2+L +(yxe2x88x92yi+L )2+L +(zxe2x88x92zi+L )2+L )}+cbxe2x80x83xe2x80x83(1)
wherein
x, y, and z are the coordinates/position of the receiver (unknown);
xi, yi, and zi are the ith satellite""s coordinates/position (known); and
cb represents the clock bias, which is a result of the error in time between the clock of the receiver and the reference time (unknown).
Thus, there is typically a total of four unknowns in equation (1) above.
Often, PRi is referred to as a pseudorange, since it represents the actual range to the ith satellite, plus or minus an offset that may result due to the receiver""s clock error, as indicated by the cb term in equation (1). The above equation, using measurements from four satellites, may be linearized and expressed in matrix form as follows:                               [                                                                                          Δ                    ⁢                                          xe2x80x83                                        ⁢                    PR1                                    ⁢                                      xe2x80x83                                                                                                                        Δ                  ⁢                                      xe2x80x83                                    ⁢                  PR2                                                                                                      Δ                  ⁢                                      xe2x80x83                                    ⁢                  PR3                                                                                                      Δ                  ⁢                                      xe2x80x83                                    ⁢                  PR4                                                              ]                =                                            [                                                                    ux1                                                        uy1                                                        uz1                                                        1                                                                                        ux2                                                        uy2                                                        uz2                                                        1                                                                                        ux3                                                        uy3                                                        uz3                                                        1                                                                                        ux4                                                        uy4                                                        uz4                                                        1                                                              ]                        xc3x97                          [                                                                                          Δ                      ⁢                                              xe2x80x83                                            ⁢                      x                                                                                                                                  Δ                      ⁢                                              xe2x80x83                                            ⁢                      y                                                                                                                                  Δ                      ⁢                                              xe2x80x83                                            ⁢                      z                                                                                                                                  Δ                      ⁢                                              xe2x80x83                                            ⁢                      cb                                                                                  ]                        ⁢                          xe2x80x83                        ⁢            or            ⁢                          xe2x80x83                        ⁢            Z                    =                      H            ·            x                                              (        2        )            
wherein
xcex94PRi is the pseudorange residual for the ith satellite (i=1, 2, 3, 4), and represents a difference between the measured pseudorange and an initial estimated range to the ith satellite (known);
uxi, uyi, and uzi are the direction cosines of the line-of-sight (LOS) vector from the receiver to the ith satellite, as projected along the x, y and z coordinate axes (known);
xcex94x, xcex94y, xcex94z, and xcex94cb are the corrections to the initial estimates of coordinates/position and the clock of the receiver, which may be offset from a reference clock (unknown).
Hereinafter, the pseudorange residual vector is also referred to as Z, the nxc3x974 element matrix H is also referred to as an observation matrix, and x represents the SPS receiver position and time correction vector, which contains the unknowns of interest. Thus, if an inverse of the observation matrix H exists, a unique solution to unknown x in the set of linear equations represented by the above matrix equation (2) may be determined, such that:
x=Hxe2x88x921xc2x7Z
or
{circumflex over (x)}=(HTxc2x7H)xe2x88x921HTxc2x7Zxe2x80x83xe2x80x83(3)
wherein,
Hxe2x88x921 is the inverse of the observation matrix;
(HTxc2x7H)xe2x88x921 is the pseudoinverse of the observation matrix; and
{circumflex over (x)} is the least-squares estimate of the vector of unknown parameters, x.
To determine the pseudoranges (PRi), a conventional SPS receiver typically uses an initial estimate of its position and clock bias that is known to within a millisecond. However, since signals from satellites travel at or approximately the speed of light, even a 1 millisecond ambiguity in time may result in an error of up to 300 kilometers in the pseudorange measurement. By solving the matrix equation (2) above, the conventional GPS receiver may compute a correction to its initial clock bias estimate, wherein the initial clock bias estimate is derived by reading the navigational message which provides xe2x80x9ctime-alignmentxe2x80x9d information.
Unfortunately, in many situations, determining the system time by reading the navigation message of one or more satellites may be difficult, due signal quality degradation. For example, where there is blockage of the satellite signals, the received signal level or signal-to-noise ratio (SNR) from the GPS satellites may be too low to demodulate and read the satellite data signals without error. Such situations may arise in personal tracking and other highly mobile applications. Under such signal conditions, it is possible for a receiver to still acquire and track the GPS signals. However, performing location and unambiguous time measurement without timing data may be best performed using alternative methods.
The present invention provides a method and apparatus for determining time in an SPS, such as the time of satellite transmission and/or time of measurement by an SPS receiver, relative to a reference time (e.g., system time or other relatively accurate reference time) without the need to determine the reference time from processing timing information provided within the satellite navigational data message.
A method and apparatus for determining a reference time associated with a satellite positioning system is described. Once determined, the reference time, in one embodiment, may be used to determine other navigational information. Such navigational information may include, for example, the location/position of a satellite positioning system (SPS) receiver. In one embodiment, a relative velocity between an SPS receiver and a set of one or more satellites is used to determine an offset between time as indicated by the SPS receiver and the reference time. According to another embodiment of the invention, an error statistic is used to determine the reference time. According to yet another embodiment of the invention, two records, each representing at least a portion of a satellite message, are compared to determine time. In one implementation, the SPS receiver is mobile and operates in conjunction with a basestation to determine time and/or other navigational information according to one or a combination of the methods described.